---
title: Retroboot
...

[FAQ](faq.md)                                                               --
[Download](download.md)                                                     --
[Install](docs/install/)                                                    --
[Docs](docs/)                                                               --
[News](news/)                                                               --
[IRC Support](https://webchat.freenode.net/?channels=retroboot)                    --
[Report bugs](https://notabug.org/retroboot/retroboot/issues)                      --
[Send patches](contrib.md)                                                      --
**[Buy preinstalled](suppliers.md)**

Retroboot is [freedom-respecting](https://www.gnu.org/philosophy/free-sw.html)
*boot firmware* that initializes the hardware in your computer and loads an
operating system. It replaces the proprietary BIOS/UEFI firmware commonly loaded
onto a computer. Retroboot is compatible with [specific computer models that
use the x86 architecture](docs/hardware/). User support is available at
[\#retroboot](https://webchat.freenode.net/?channels=retroboot) on Freenode IRC.

Retroboot can boot all of the most popular operating systems such GNU+Linux,
BSD and even *Windows*. We recommend *free* operating systems (e.g. GNU+Linux)
that comply with [GNU Free System Distribution
Guidelines](https://gnu.org/distros/free-system-distribution-guidelines.html)

*Boot firmware* is low-level software that executes when
a computer is turned on. It brings the components (CPU,
[memory controller](https://en.wikipedia.org/wiki/Memory_controller),
peripherals etc) to a useful state enabling easy software development and/or
usage. Boot firmware usually loads an *operating system* which provides
a unified interface for application software.

Retroboot uses [coreboot](https://www.coreboot.org/) for hardware initialization.
Coreboot does initialization, and jumps to a *payload* which provides the user
interface. Retroboot provides these payload choices: GRUB (boots Linux kernels
and BSD kernels directly, which then run on *bare metal*) and SeaBIOS (for
legacy OS); Tianocore and Linuxboot are planned to be added. In the way Debian
is a GNU+Linux distribution, Retroboot is a *coreboot distribution*! Retroboot
provides a *fully automated build system* that auto-builds coreboot ROMs based
on tested coreboot revisions. Retroboot then provides user-friendly
documentation and support, along with pre-compiled coreboot ROMs and regular
releases.

The name *retroboot* is short for *retrofitted boot firmware*, referring to the
fact that it replaces what came installed and adds many new features.

Why use Retroboot?
------------------

Because you have rights. The right to privacy, freedom of thought, freedom
of speech and the right to read. In the context of computing, that means anyone
can use [free software](https://www.gnu.org/philosophy/free-sw.html). Simply
speaking, free software is software that is under the direct sovereignty of the
user and, more importantly, the collective that is the *community*. Retroboot
is dedicated to the Free Software community, with the aim of making free software
at a *low level* more accessible to non-technical people.

Many people use [proprietary](https://www.gnu.org/philosophy/proprietary.html)
boot firmware, even if they use GNU+Linux. Non-free boot firmware often
[contains](faq.md#intel) [backdoors](faq.md#amd), can be slow and have severe
bugs. Development and support can be abandoned at any time. By contrast,
Retroboot is a free software project, where anyone can contribute or inspect
its code.

Retroboot is faster, more secure and more reliable than most non-free
firmware. Retroboot provides many advanced features, like encrypted
/boot/, GPG signature checking before booting a Linux kernel and more!
Retroboot gives *you* control over *your* computing.

How is Retroboot different versus Libreboot?
--------------------------------------------

Retroboot development started on December 11th, 2020, forked from the Libreboot
20160907 build system. Retroboot is similar philosophically
to Libreboot, but with one difference: Libreboot only allows support for boards
where the firmware can be 100% Free Software as per what is installed to the
boot flash.

Retroboot merely *prefers* this, but allows binary blobs. Retroboot will accept
any board that coreboot supports.

It was started in response to a growing trend in the community: lots of people
are interested in Libreboot, but wish to use newer/faster hardware. Porting
Libreboot to newer Intel/AMD hardware is very difficult. Meanwhile, there
existed no user-friendly solution like Libreboot. Retroboot provides an easy,
automated build system and installation process, with user-friendly
documentation and professional user support backed up by years of experience
dealing with coreboot systems.

The entire motivation behind this *very liberal* policy (in Retroboot) is that
it will lead to many more coreboot users, on all coreboot systems, especially
when more people join the Retroboot project as maintainers for various boards.
By increasing the ease of use and accessibility for a given coreboot system,
for *non-technical users*, it increases the amount *of* technical users because
more people learn about coreboot. This increases the number of people that can
provide *testing* for coreboot, and will very likely:

* Increase the number of coreboot developers, because some of those new users
  will become truly inspired
* More ability for coreboot developers to find individual testers for a given
  board (Retroboot makes it easy to maintain boards, on any given coreboot
  revision, with any collection of custom patches on top of that coreboot
  revision, for that board).
